\doxysection{support\+\_\+functions\+\_\+f16.\+h}
\hypertarget{support__functions__f16_8h_source}{}\label{support__functions__f16_8h_source}\index{C:/Users/ASUS/Desktop/dm-\/ctrlH7-\/balance-\/9025test/Middlewares/ST/ARM/DSP/Include/dsp/support\_functions\_f16.h@{C:/Users/ASUS/Desktop/dm-\/ctrlH7-\/balance-\/9025test/Middlewares/ST/ARM/DSP/Include/dsp/support\_functions\_f16.h}}

\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{comment}{/******************************************************************************}}
\DoxyCodeLine{00002\ \textcolor{comment}{\ *\ @file\ \ \ \ \ support\_functions\_f16.h}}
\DoxyCodeLine{00003\ \textcolor{comment}{\ *\ @brief\ \ \ \ Public\ header\ file\ for\ CMSIS\ DSP\ Library}}
\DoxyCodeLine{00004\ \textcolor{comment}{\ *\ @version\ \ V1.10.1}}
\DoxyCodeLine{00005\ \textcolor{comment}{\ *\ @date\ \ \ \ \ 18\ August\ 2022}}
\DoxyCodeLine{00006\ \textcolor{comment}{\ *\ Target\ Processor:\ Cortex-\/M\ and\ Cortex-\/A\ cores}}
\DoxyCodeLine{00007\ \textcolor{comment}{\ ******************************************************************************/}}
\DoxyCodeLine{00008\ \textcolor{comment}{/*}}
\DoxyCodeLine{00009\ \textcolor{comment}{\ *\ Copyright\ (c)\ 2010-\/2020\ Arm\ Limited\ or\ its\ affiliates.\ All\ rights\ reserved.}}
\DoxyCodeLine{00010\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00011\ \textcolor{comment}{\ *\ SPDX-\/License-\/Identifier:\ Apache-\/2.0}}
\DoxyCodeLine{00012\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00013\ \textcolor{comment}{\ *\ Licensed\ under\ the\ Apache\ License,\ Version\ 2.0\ (the\ License);\ you\ may}}
\DoxyCodeLine{00014\ \textcolor{comment}{\ *\ not\ use\ this\ file\ except\ in\ compliance\ with\ the\ License.}}
\DoxyCodeLine{00015\ \textcolor{comment}{\ *\ You\ may\ obtain\ a\ copy\ of\ the\ License\ at}}
\DoxyCodeLine{00016\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00017\ \textcolor{comment}{\ *\ www.apache.org/licenses/LICENSE-\/2.0}}
\DoxyCodeLine{00018\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00019\ \textcolor{comment}{\ *\ Unless\ required\ by\ applicable\ law\ or\ agreed\ to\ in\ writing,\ software}}
\DoxyCodeLine{00020\ \textcolor{comment}{\ *\ distributed\ under\ the\ License\ is\ distributed\ on\ an\ AS\ IS\ BASIS,\ WITHOUT}}
\DoxyCodeLine{00021\ \textcolor{comment}{\ *\ WARRANTIES\ OR\ CONDITIONS\ OF\ ANY\ KIND,\ either\ express\ or\ implied.}}
\DoxyCodeLine{00022\ \textcolor{comment}{\ *\ See\ the\ License\ for\ the\ specific\ language\ governing\ permissions\ and}}
\DoxyCodeLine{00023\ \textcolor{comment}{\ *\ limitations\ under\ the\ License.}}
\DoxyCodeLine{00024\ \textcolor{comment}{\ */}}
\DoxyCodeLine{00025\ }
\DoxyCodeLine{00026\ \ }
\DoxyCodeLine{00027\ \textcolor{preprocessor}{\#ifndef\ \_SUPPORT\_FUNCTIONS\_F16\_H\_}}
\DoxyCodeLine{00028\ \textcolor{preprocessor}{\#define\ \_SUPPORT\_FUNCTIONS\_F16\_H\_}}
\DoxyCodeLine{00029\ }
\DoxyCodeLine{00030\ \textcolor{preprocessor}{\#include\ "{}arm\_math\_types\_f16.h"{}}}
\DoxyCodeLine{00031\ \textcolor{preprocessor}{\#include\ "{}arm\_math\_memory.h"{}}}
\DoxyCodeLine{00032\ }
\DoxyCodeLine{00033\ \textcolor{preprocessor}{\#include\ "{}dsp/none.h"{}}}
\DoxyCodeLine{00034\ \textcolor{preprocessor}{\#include\ "{}dsp/utils.h"{}}}
\DoxyCodeLine{00035\ }
\DoxyCodeLine{00036\ \textcolor{preprocessor}{\#ifdef\ \ \ \_\_cplusplus}}
\DoxyCodeLine{00037\ \textcolor{keyword}{extern}\ \textcolor{stringliteral}{"{}C"{}}}
\DoxyCodeLine{00038\ \{}
\DoxyCodeLine{00039\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00040\ }
\DoxyCodeLine{00041\ \textcolor{preprocessor}{\#if\ defined(ARM\_FLOAT16\_SUPPORTED)}}
\DoxyCodeLine{00042\ }
\DoxyCodeLine{00049\ \textcolor{keywordtype}{void}\ arm\_copy\_f16(\textcolor{keyword}{const}\ float16\_t\ *\ pSrc,\ float16\_t\ *\ pDst,\ uint32\_t\ blockSize);}
\DoxyCodeLine{00050\ }
\DoxyCodeLine{00057\ \textcolor{keywordtype}{void}\ arm\_fill\_f16(float16\_t\ value,\ float16\_t\ *\ pDst,\ uint32\_t\ blockSize);}
\DoxyCodeLine{00058\ }
\DoxyCodeLine{00065\ \textcolor{keywordtype}{void}\ arm\_f16\_to\_q15(\textcolor{keyword}{const}\ float16\_t\ *\ pSrc,\ q15\_t\ *\ pDst,\ uint32\_t\ blockSize);}
\DoxyCodeLine{00066\ }
\DoxyCodeLine{00073\ \textcolor{keywordtype}{void}\ arm\_q15\_to\_f16(\textcolor{keyword}{const}\ q15\_t\ *\ pSrc,\ float16\_t\ *\ pDst,\ uint32\_t\ blockSize);}
\DoxyCodeLine{00074\ }
\DoxyCodeLine{00081\ \textcolor{keywordtype}{void}\ arm\_f64\_to\_f16(\textcolor{keyword}{const}\ float64\_t\ *\ pSrc,\ float16\_t\ *\ pDst,\ uint32\_t\ blockSize);}
\DoxyCodeLine{00082\ }
\DoxyCodeLine{00089\ \textcolor{keywordtype}{void}\ arm\_f16\_to\_f64(\textcolor{keyword}{const}\ float16\_t\ *\ pSrc,\ float64\_t\ *\ pDst,\ uint32\_t\ blockSize);}
\DoxyCodeLine{00090\ }
\DoxyCodeLine{00097\ \textcolor{keywordtype}{void}\ arm\_float\_to\_f16(\textcolor{keyword}{const}\ float32\_t\ *\ pSrc,\ float16\_t\ *\ pDst,\ uint32\_t\ blockSize);}
\DoxyCodeLine{00098\ }
\DoxyCodeLine{00105\ \textcolor{keywordtype}{void}\ arm\_f16\_to\_float(\textcolor{keyword}{const}\ float16\_t\ *\ pSrc,\ float32\_t\ *\ pDst,\ uint32\_t\ blockSize);}
\DoxyCodeLine{00106\ }
\DoxyCodeLine{00117\ float16\_t\ arm\_weighted\_sum\_f16(\textcolor{keyword}{const}\ float16\_t\ *in}
\DoxyCodeLine{00118\ \ \ ,\ \textcolor{keyword}{const}\ float16\_t\ *weigths}
\DoxyCodeLine{00119\ \ \ ,\ uint32\_t\ blockSize);}
\DoxyCodeLine{00120\ }
\DoxyCodeLine{00133\ \textcolor{keywordtype}{void}\ arm\_barycenter\_f16(\textcolor{keyword}{const}\ float16\_t\ *in}
\DoxyCodeLine{00134\ \ \ ,\ \textcolor{keyword}{const}\ float16\_t\ *weights}
\DoxyCodeLine{00135\ \ \ ,\ float16\_t\ *out}
\DoxyCodeLine{00136\ \ \ ,\ uint32\_t\ nbVectors}
\DoxyCodeLine{00137\ \ \ ,\ uint32\_t\ vecDim);}
\DoxyCodeLine{00138\ }
\DoxyCodeLine{00139\ }
\DoxyCodeLine{00143\ }
\DoxyCodeLine{00147\ }
\DoxyCodeLine{00152\ }
\DoxyCodeLine{00165\ \_\_STATIC\_INLINE\ int16\_t\ arm\_typecast\_s16\_f16(float16\_t\ x)}
\DoxyCodeLine{00166\ \{}
\DoxyCodeLine{00167\ \ \ \ int16\_t\ res;}
\DoxyCodeLine{00168\ \ \ \ res=*(int16\_t*)memcpy((\textcolor{keywordtype}{char}*)\&res,(\textcolor{keywordtype}{char}*)\&x,\textcolor{keyword}{sizeof}(float16\_t));}
\DoxyCodeLine{00169\ \ \ \ \textcolor{keywordflow}{return}(res);}
\DoxyCodeLine{00170\ \}}
\DoxyCodeLine{00171\ }
\DoxyCodeLine{00184\ \_\_STATIC\_INLINE\ float16\_t\ arm\_typecast\_f16\_s16(int16\_t\ x)}
\DoxyCodeLine{00185\ \{}
\DoxyCodeLine{00186\ \ \ \ float16\_t\ res;}
\DoxyCodeLine{00187\ \ \ \ res=*(float16\_t*)memcpy((\textcolor{keywordtype}{char}*)\&res,(\textcolor{keywordtype}{char}*)\&x,\textcolor{keyword}{sizeof}(int16\_t));}
\DoxyCodeLine{00188\ \ \ \ \textcolor{keywordflow}{return}(res);}
\DoxyCodeLine{00189\ \}}
\DoxyCodeLine{00190\ }
\DoxyCodeLine{00191\ }
\DoxyCodeLine{00195\ }
\DoxyCodeLine{00196\ }
\DoxyCodeLine{00197\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{/*defined(ARM\_FLOAT16\_SUPPORTED)*/}\textcolor{preprocessor}{}}
\DoxyCodeLine{00198\ \textcolor{preprocessor}{\#ifdef\ \ \ \_\_cplusplus}}
\DoxyCodeLine{00199\ \}}
\DoxyCodeLine{00200\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00201\ }
\DoxyCodeLine{00202\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{/*\ ifndef\ \_SUPPORT\_FUNCTIONS\_F16\_H\_\ */}\textcolor{preprocessor}{}}

\end{DoxyCode}
